#ifndef CONNECTION_LISTENER_H
#define CONNECTION_LISTENER_H

#include <boost/shared_ptr.hpp>

#include "worker_thread.h"
#include "tcp_socket.h"
#include "network.h"
#include "event_handler.h"

namespace network {
	class connection_listener : public network::worker_thread {
	public:
		connection_listener(boost::shared_ptr<network::tcp_socket> sock,
				    boost::shared_ptr<network::message_queue> q)
		: _sock(sock), _queue(q) {}
		virtual ~connection_listener() {}

		virtual void run();
	private:
		boost::shared_ptr<network::tcp_socket> _sock;
		boost::shared_ptr<network::message_queue> _queue;
	};
}

#endif
